package fr.musique.service;

import java.util.ArrayList;
import java.util.List;

import javax.jws.WebService;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import fr.musique.bean.Compositeur;
import fr.musique.itf.CompositeurItf;

@Service("compositeurService")
@WebService(endpointInterface = "fr.musique.service.CompositeurService")
public class CompositeurServiceImpl implements CompositeurService {

	@Autowired
	protected CompositeurItf compositeur;

	// Permet de récupérer un objet compositeur en fonction de son id
	@Override
	@Transactional
	public Compositeur get(int id) {
		return this.compositeur.get(id);
	}

	// Permet de récupérer la liste des objets compositeurs
	@Override
	@Transactional
	public List<Compositeur> getAll() {
		List<Compositeur> resultats = new ArrayList<Compositeur>();

		for (Compositeur res : this.compositeur.getAll()) {
			resultats.add(res);
		}

		return resultats;
	}

	// Permet de sauvegarder un objet compositeur
	@Override
	public void save(Compositeur compositeur) {
		this.compositeur.save(compositeur);
	}
}